home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_07_01 / v7n1064a.txt < prev    next >
Text File  |  1988-09-12  |  849b  |  46 lines

  1. /* try.c    try the dir_retrieve() and dir_free routines.
  2.  *        get a directory listing, print it and the file count.
  3.  *
  4.  * (c) Copyright 1988 Aspen Scientific
  5.  * All Rights Reserved.
  6.  */
  7.  
  8. #include "dirret.h"
  9.  
  10. int
  11. main(argc, argv)
  12. int argc;
  13. char **argv;
  14. {
  15.     register int i;
  16.     struct dir_retrieve_t *dir;
  17.     char *try;
  18.     int dir_entries;
  19.  
  20.     /* use either the command line argument,
  21.      * or the default - the current dir (".").
  22.      */
  23.     if (argc == 1)
  24.         try = ".";
  25.     else
  26.         try = argv[1];
  27.  
  28.     dir = dir_retrieve( try, &dir_entries );
  29.  
  30.     if (dir == (struct dir_retrieve_t *)0) {
  31.  
  32.         /* print error with errno string */
  33.         perror("dir_retrieve");
  34.         exit(2);
  35.     }
  36.  
  37.     for (i=0; i < dir_entries; ++i)
  38.         printf("%s%c\n", dir[i].name, (dir[i].subdir ? '/':'\0'));
  39.  
  40.     printf("\t%d File(s)\n", dir_entries);
  41.  
  42.     dir_free( dir );
  43.  
  44.     exit(0);
  45. }
  46.